package ldh.im.monitor.rpc;

import ldh.im.dto.business.ExitReq;
import ldh.im.dto.business.user.LoginReq;
import ldh.im.dto.business.user.LoginResp;
import ldh.im.dto.business.user.LoginTokenReq;
import ldh.im.dto.business.user.ReConnection;
import ldh.rpc.Rpc;
import ldh.rpc.RpcMapper;

@Rpc
public interface RpcMonitorLoginService {

    @RpcMapper(path = "login")
    LoginResp login(LoginReq loginReq);

    @RpcMapper(path = "loginByToken")
    LoginResp loginByToken(LoginTokenReq loginTokenReq);

    @RpcMapper(path = "reconnection")
    LoginResp reconnection(ReConnection reConnection);

    @RpcMapper(path = "logout")
    void logout(ExitReq exitReq);
}
